#ifndef EXTRACTOR_H
#define EXTRACTOR_H
//Author: Austen Higgins-Cassidy
// 4/10/2012
#include <string>
#include <iostream>

unsigned int htoi(std::string hex);
unsigned int shtoi(std::string hex);
void chompL(std::string &str); //Remove leading whitespace
void chompR(std::string &str); //Remove trailing whitespace
void chomp(std::string &str); //Remove leading and trailing whitespace
int extractUntil(std::istream &file, std::string &buffer, std::string delims); //Extract until one or more delims are found
int extractUntilNOT(std::istream &file, std::string &buffer, std::string delims); //Extract until one of the delims is NOT the character found
char leftShift(char *target, char in, int size); //Perform a character-wise shift
int extractUntilToken(std::istream &file, std::string &buffer, std::string token); //Extract until a specific token is found
int extractUntilTokenList(std::istream &file, std::string &buffer, std::string tokenlist[], int tokens, std::string *token_matched=NULL); //extract until one of many tokens is found
#endif